#include "unistd.h"
#include "stdio.h"
#include "fcntl.h"

int main(int argc, char const *argv[])
{
    printf("父进程: %d\n", getpid());

    pid_t pid = fork();
    if (pid == 0)
    {
        // 子进程
        printf("子进程: %d  他的父进程: %d\n", getpid(), getppid());

        // 执行其他程序  ls
        //execl("/bin/ls", "ls", "-l", NULL);
        execl("/home/lzc/linux_gate_250605/sys_call_test", "sys_call_test", NULL);
        
        // 后面的代码不会再执行

    }
    else if (pid > 0)
    {
        // 父进程
        printf("父进程: %d  他的子进程: %d\n", getpid(), pid);
    }
    else if (pid == -1)
    {
        perror("fork失败");
    }
    printf("abc: %d\n", getpid());



    return 0;
}
